맨위로가기

실시간 전송 프로토콜

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

실시간 전송 프로토콜(RTP)은 스트리밍 미디어의 실시간 전송을 위해 설계된 프로토콜로, 지터 보상, 패킷 손실 및 아웃 오브 오더 딜리버리 감지 기능을 제공한다. RTP는 IP 네트워크에서 오디오/비디오 전송의 표준으로 사용되며, RTP와 RTCP(RTP 제어 프로토콜) 두 가지 프로토콜로 구성된다. RTP는 멀티미디어 데이터 전송, 타임스탬프, 시퀀스 번호, 페이로드 형식 정보를 제공하며, RTCP는 QoS 피드백 및 동기화를 담당한다. RTP는 인터넷 전화(VoIP), IP 기반 오디오, WebRTC 등 다양한 실시간 멀티미디어 애플리케이션에 활용된다. RTP는 스트림 전송, 순서 제어, 타임스탬프, 페이로드 형식, 멀티캐스트 지원 등의 기능을 제공하며, IETF에서 표준화되었다.

더 읽어볼만한 페이지

  • 스트리밍 - 페이스북 워치
    페이스북 워치는 페이스북에서 제공하는 주문형 비디오 서비스로, 오리지널 프로그램과 라이선스 콘텐츠를 제공하며 광고 수익을 창출한다.
  • 스트리밍 - 콘텐츠 전송 네트워크
    콘텐츠 전송 네트워크(CDN)는 지리적으로 분산된 서버 네트워크를 이용하여 사용자에게 콘텐츠를 효율적으로 전송하는 시스템으로, 엣지 서버 캐싱, 데이터 전송 시간 단축, 대역폭 비용 절감, 가용성 향상 등의 이점을 제공하지만 보안 및 개인 정보 보호, 특정 업체 의존성 등의 과제도 존재한다.
  • VoIP 프로토콜 - VoiceXML
    VoiceXML은 음성 브라우저에게 음성 합성, 자동 음성 인식, 대화 관리, 오디오 재생을 지시하는 XML 기반 마크업 언어로서, 다양한 산업 분야에서 음성 인터페이스 구축에 사용되었으며, 관련 표준과 함께 1999년 개발 후 W3C로 표준 관리가 이관되었으나 현재는 새로운 표준 개발이 중단되었다.
  • VoIP 프로토콜 - T.38
    T.38은 IP 네트워크를 통해 팩스를 전송하는 프로토콜로, T.30 프로토콜을 기반으로 하며 스푸핑, 데이터 중복 기술을 사용하여 네트워크 문제를 해결하고, CNG, CED 신호와 이미지 데이터를 UDP 또는 TCP로 중계한다.
  • 응용 계층 프로토콜 - D-Bus
    D-Bus는 2002년에 시작된 프로세스 간 통신 시스템으로, 시스템 버스와 세션 버스를 통해 정보 공유, 모듈성, 권한 격리를 제공하며, 일대일 요청-응답 및 발행/구독 통신 방식을 지원한다.
  • 응용 계층 프로토콜 - RADIUS
    RADIUS는 네트워크 접근 관리에 사용되는 AAA 프로토콜로, 클라이언트-서버 모델을 기반으로 사용자 인증 및 권한 부여를 수행하며 다양한 환경에서 활용된다.
실시간 전송 프로토콜
프로토콜 정보
명칭실시간 전송 프로토콜
약칭RTP
목적오디오 및 비디오 전송
개발자IETF 오디오-비디오 전송 워킹 그룹
발표일1996년 1월
기반 프로토콜네트워크 음성 프로토콜
관련 RFCRFC 1889
RFC 3550
RFC 3551

2. 역사

패킷 교환 네트워크를 통한 오디오 및 비디오 연구는 1970년대 초로 거슬러 올라간다. 인터넷 엔지니어링 태스크 포스(IETF)는 1977년에 IETF RFC 741을 발표했고, 1992년에 RTP 개발을 시작했으며, 세션 발표 프로토콜(SAP), 세션 설명 프로토콜(SDP), 세션 시작 프로토콜(SIP)을 개발하게 된다.

RTP는 종단간 실시간 스트리밍 미디어 전송을 위해 설계되었다. 이 프로토콜은 특히 IP 네트워크에서 UDP 전송 중에 흔히 발생하는 지터 보상 및 패킷 손실 및 순서가 뒤바뀐 전달 감지 기능을 제공한다. RTP는 IP 멀티캐스트를 통해 여러 대상에 데이터 전송을 허용한다.[2] RTP는 IP 네트워크에서 오디오/비디오 전송을 위한 주요 표준으로 간주되며, 관련 프로필 및 페이로드 형식과 함께 사용된다.[8] RTP의 설계는 운영 체제의 프로토콜 스택이 아닌 애플리케이션에서 프로토콜 기능이 구현되는 응용 계층 프레이밍으로 알려진 아키텍처 원칙을 기반으로 한다.

실시간 멀티미디어 스트리밍 애플리케이션은 정보의 적시 전달을 필요로 하며, 이러한 목표를 달성하기 위해 때로는 약간의 패킷 손실을 허용할 수 있다. 예를 들어, 오디오 애플리케이션에서 패킷 손실이 발생하면 오디오 데이터의 몇 분의 1초가 손실될 수 있으며, 이는 적절한 오류 은폐 알고리즘으로 감지할 수 없도록 만들 수 있다.[3] 전송 제어 프로토콜(TCP)는 RTP 사용에 대해 표준화되었지만,[4] TCP는 적시성보다 안정성을 선호하므로 일반적으로 RTP 애플리케이션에서는 사용되지 않는다. 대신, 대부분의 RTP 구현은 사용자 데이터그램 프로토콜(UDP)을 기반으로 구축된다.[3]

RTP는 IETF 표준화 기구의 오디오/비디오 전송 워킹 그룹에서 개발되었다. RTP는 H.323 및 RTSP와 같은 다른 프로토콜과 함께 사용된다.[8]

3. 프로토콜의 기능 및 특징

RTP는 스트리밍 미디어의 종단 간(end-to-end) 실시간 전송을 위해 설계된 프로토콜이다. IP 네트워크 상에서 사용자 데이터그램 프로토콜(UDP)을 기반으로 동작하며, 지터 보상, 패킷 손실 및 순서가 뒤바뀐 전달 감지 기능을 제공한다.[38] 또한, IP 멀티캐스트를 통해 여러 대상에게 데이터를 전송할 수 있다.[2]

RTP는 인터넷 전화(VoIP), IP 기반 오디오, WebRTC, IPTV 등 실시간 멀티미디어 애플리케이션에서 널리 사용된다. H.323, RTSP와 같은 다른 프로토콜과 함께 사용되며, 데이터 전송을 위해 RTP를, 제어 정보 및 QoS(서비스 품질) 매개변수 전송을 위해 RTCP(RTP 제어 프로토콜)를 사용한다.[44][45]

RTP는 애플리케이션 레이어 프레이밍 원칙에 따라 설계되어, 프로토콜 기능이 운영 체제의 프로토콜 스택이 아닌 애플리케이션에 구현된다.

RTP는 다음과 같은 주요 기능을 제공한다.


  • 스트림 전송: 실시간 데이터 전송을 위한 타임스탬프(동기화), 시퀀스 번호(패킷 손실 및 재정렬 감지), 페이로드 포맷(데이터 인코딩 형식) 등의 정보를 제공한다.[46]
  • 순서 제어: RTP는 스트림 시퀀스 번호 기능을 제공하여 순서 제어를 가능하게 한다.[31]
  • 타임스탬프: RTP 프로토콜은 동기화를 위한 타임스탬프 정보를 제공한다.[46]
  • 페이로드 형식: 다양한 멀티미디어 형식(오디오, 비디오 등)을 지원하며, RTP 프로필 및 페이로드 형식 사양을 통해 특정 형식의 데이터를 전송한다.
  • 멀티캐스트 지원: RTP는 IP 멀티캐스트를 통해 여러 대상에게 데이터를 전송할 수 있도록 한다.[38]


RTP는 전송 제어 프로토콜(TCP) 대신 사용자 데이터그램 프로토콜(UDP)를 주로 사용하는데, 이는 TCP가 신뢰성을 우선시하는 반면, RTP는 실시간성을 더 중요하게 생각하기 때문이다.[39]

표. UDP, RTP/UDP, TCP 비교
colspan="2" |UDPRTP/UDPTCP
애플리케이션 간 통신
패킷 트랜잭션
스트림 통신-
순서 제어
rowspan="2" |도착 순서 보장--[28]
시퀀스 순서 복원-[29]
도달 보장--[30]


3. 1. 스트림 전송

RTP는 스트리밍 미디어의 종단 간, 실시간 전송을 위해 설계되었다. 이 프로토콜은 지터 보상, 패킷 손실, 아웃 오브 오더 딜리버리(특히 IP 네트워크에서 UDP 전송 시 일반적임)의 감지 기능을 제공한다. RTP는 IP 멀티캐스트를 통해 여러 장소에 데이터를 전송할 수 있게 한다.[38] RTP는 IP 네트워크에서 오디오/비디오 전송의 주된 표준으로 간주되며 연관 프로파일 및 페이로드 포맷과 함께 사용된다.[44] RTP의 설계는 애플리케이션 레이어 프레이밍이라는 구조적 원칙에 기반을 두며, 프로토콜 기능들이 운영 체제의 프로토콜 스택이 아닌 애플리케이션에 구현된다.

실시간 멀티미디어 스트리밍 애플리케이션은 시기적절한 정보 전달을 요구하며, 이를 위해 일부 패킷 손실을 감수한다. 예를 들어 오디오 부분의 패킷 손실은 1초의 사소한 오디오 데이터 손실을 일으킬 수 있으나, 적절한 오류 은닉 알고리즘을 통해 눈치채지 못하게 만들 수 있다.[39] 전송 제어 프로토콜(TCP)이 RTP용으로 표준화되어 있지만,[40] TCP는 시기적절함보다 신뢰성을 우선시하기 때문에 RTP에 일반적으로 사용되지는 않는다. RTP 구현체들 다수는 TCP 대신 사용자 데이터그램 프로토콜(UDP)를 사용한다.[39] 멀티미디어 세션에 특화되어 설계된 다른 전송 프로토콜로는 SCTP[41], DCCP[42]가 있으나 2012년 기준으로 널리 사용되지는 않고 있다.[43]

RTP는 IETF 표준화 기구의 오디오/비디오 트랜스포트 워킹 그룹에 의해 개발되었다. RTP는 H.323, RTSP 등의 다른 프로토콜들과 결합하여 사용된다.[44] RTP 사양은 RTP와 RTCP 두 가지 프로토콜을 기술하고 있다. RTP는 멀티미디어 데이터 전송에 사용되며, RTCP는 제어 정보 및 QoS 변수를 주기적으로 송신하기 위해 사용된다.[45]

데이터 전송 프로토콜 RTP는 실시간 데이터를 전달한다. 이 프로토콜이 제공하는 정보에는 타임스탬프(동기화를 위해), 시퀀스 번호(패킷 손실 및 재정렬 감지를 위해), 데이터의 인코딩 포맷을 지시하는 페이로드 포맷이 포함된다.[46] 제어 프로토콜 RTCP는 미디어 스트림 간 QoS 피드백과 동기화에 사용된다. RTCP 트래픽 대역은 RTP에 비해 적은 편으로, 대개 약 5% 정도이다.[46][47]

RTP 세션은 일반적으로 H.323, 세션 개시 프로토콜(SIP), RTSP, 또는 징글(XMPP) 등 시그널링 프로토콜을 사용하여 통신 피어 간에 초기화된다. 이러한 프로토콜들은 세션 기술 프로토콜을 사용하여 세션의 변수를 지정할 수 있다.[48]

RTP 세션은 개별 멀티미디어 스트림별로 확립된다. 오디오와 비디오 스트림은 별도의 RTP 세션을 사용할 수 있으며, 수신기가 선별적으로 특정 스트림의 컴포넌트를 수신할 수 있게 만들어준다.[49] 세션 하나는 도착지 IP 주소 + RTP/RTCP 포트 쌍으로 구성된다. 사양에 따르면 RTP 포트 번호는 짝수로, 각각의 연관되는 RTCP 포트는 그다음 홀수 번호로 선정할 것을 권고한다.[53] 그러나 프로토콜 멀티플렉싱 상황에서는 RTP와 RTCP에 단일 포트가 선정된다.[50] RTP와 RTCP는 보통 특권이 없는 UDP 포트(1024 ~ 65535)를 사용하지만,[51] 프로토콜 설계가 전송에 독립적이므로 SCTP, DCCP 같은 다른 전송 프로토콜을 사용할 수도 있다.

3. 2. 순서 제어

RTP는 스트림 시퀀스 번호 기능을 제공하여 순서 제어를 가능하게 한다.[31] '''순서 번호'''(sequence number영어)는 RTP 패킷의 전송 순서를 나타내는 번호이다.[33] 초기값은 무작위로 설정된다.[34] 네트워크 혼잡, 부하 분산, 기타 예측 불가능한 네트워크 동작으로 인해 패킷은 지연되거나 순서가 뒤섞여 도착할 수 있다. 패킷 집합을 스트림으로 디코딩하려면 패킷 순서를 알아야 한다.

3. 3. 타임스탬프

RTP 프로토콜은 동기화를 위한 타임스탬프 정보를 제공한다.[46] 데이터 전송 프로토콜인 RTP는 실시간 데이터를 전송하며, 타임스탬프, 패킷 손실 및 재정렬 감지를 위한 시퀀스 번호, 데이터의 인코딩된 형식을 나타내는 페이로드 형식을 포함한다.[9]

3. 4. 페이로드 형식 (Payload Type)

RTP는 다양한 멀티미디어 형식을 전송하도록 설계되었으며, RTP 표준을 수정하지 않고도 새로운 형식을 개발할 수 있다. 이를 위해 프로토콜의 특정 애플리케이션에 필요한 정보는 일반 RTP 헤더에 포함되지 않는다. 각 애플리케이션 클래스(예: 오디오, 비디오)에 대해 RTP는 '프로필'과 관련 '페이로드 형식'을 정의한다.[15] 특정 애플리케이션에서 RTP를 사용하려면 프로필 및 페이로드 형식 사양이 필요하다.[16]

프로필은 페이로드 데이터를 인코딩하는 코덱과 RTP 헤더의 프로토콜 필드 '페이로드 유형'(PT)에 대한 페이로드 형식 코드 매핑을 정의한다. 각 프로필에는 여러 페이로드 형식 사양이 함께 제공되며, 각 사양은 특정 인코딩된 데이터의 전송을 설명한다.[8] 오디오 페이로드 형식의 예로는 G.711, G.723, G.726, G.729, GSM, QCELP, MP3, DTMF가 있으며, 비디오 페이로드의 예로는 H.261, H.263, H.264, H.265 및 MPEG-1/MPEG-2가 있다.[17] MPEG-4 오디오/비디오 스트림을 RTP 패킷에 매핑하는 방법은 RFC 문서에 명시되어 있으며, H.263 비디오 페이로드는 다른 RFC 문서에 설명되어 있다.[18]

RTP 프로필의 예는 다음과 같다.

  • '최소 제어 기능을 갖춘 오디오 및 비디오 컨퍼런스를 위한 RTP 프로필'(RFC 문서)은 고정 페이로드 유형 할당 집합과 세션 설명 프로토콜(SDP)을 사용하여 페이로드 형식과 PT 값 간의 매핑을 위한 동적 메커니즘을 정의한다.
  • 보안 실시간 전송 프로토콜(SRTP) (RFC 문서)은 페이로드 데이터 전송을 위한 암호화 서비스를 제공하는 RTP 프로필을 정의한다.[19]
  • 사물 인터넷 통신을 위한 실험적 'RTP용 제어 데이터 프로필'(RTP/CDP).[20]

3. 5. 멀티캐스트 지원

RTP는 IP 멀티캐스트를 통해 여러 대상에게 데이터를 전송할 수 있도록 한다.[38]

4. 패킷 구조

...96+32×CC프로필 고유 확장 헤더 ID확장 헤더 길이128+32×CC확장 헤더
...


4. 1. RTP 헤더

RTP 패킷 헤더는 응용 계층에서 만들어져 전송 계층으로 전달되며, RTP 미디어 데이터의 각 단위는 RTP 패킷 헤더로 시작한다. RTP 헤더의 최소 크기는 12바이트이며, 선택적으로 헤더 확장 기능이 추가될 수 있다.[21] 헤더의 필드는 다음과 같다.

RTP 패킷 헤더
비트 오프셋0-1234-789-1516-31
0버전PXCCMPT순서 번호
32타임스탬프
64SSRC 식별자
96CSRC 식별자
...
96+32×CC프로필 고유 확장 헤더 ID확장 헤더 길이
128+32×CC확장 헤더
...

4. 2. 확장 헤더 (Extension Header)

RTP 헤더에서 확장(X) 비트가 1이면, 가변 길이의 확장 헤더가 기본 RTP 헤더 뒤에 추가된다.[22] 확장 헤더는 애플리케이션 또는 프로필에 따라 다르게 구성된다.[22]

확장 헤더는 프로필별 식별자(16비트)와 길이 지정자(16비트)를 포함하는 첫 32비트 워드를 가지며, 그 뒤에 확장 헤더 데이터가 온다.[16] 길이 지정자는 확장 헤더의 길이를 32비트 단위로 나타내며, 이 32비트 워드 자체는 길이에 포함되지 않는다.[16]

RTP 패킷 헤더
비트 오프셋0-1516-31
96+32×CC프로필 고유 확장 헤더 ID확장 헤더 길이
128+32×CC확장 헤더
...


4. 3. RTP 페이로드 (Payload)

RTP 헤더의 최소 크기는 12바이트이다. 헤더 다음에는 선택적 헤더 확장이 올 수 있다. 그 뒤에 RTP 페이로드가 오며, 형식은 특정 애플리케이션 클래스에 따라 결정된다.[21] 헤더의 필드는 다음과 같다.

RTP 패킷 헤더
OffsetsOctet0123
OctetBit012345678910111213141516171819202122232425262728293031
00VersionPXCCMPTSequence number
432Timestamp
864SSRC identifier
1296CSRC identifiers
12+4×CC96+32×CCProfile-specific extension header IDExtension header length
16+4×CC128+32×CCExtension header

5. RTP 프로파일 및 페이로드 포맷

RTP는 특정 프로토콜 애플리케이션에 필요한 정보를 일반 RTP 헤더에 포함하지 않고, 별도의 RTP 프로파일 및 관련 페이로드 포맷을 통해 제공한다. 각 애플리케이션 클래스(예: 오디오, 비디오)에 대해 RTP는 프로파일과 하나 이상의 관련 페이로드 포맷을 정의한다.[52] 특정 애플리케이션 사용을 위한 완전한 RTP 사양은 프로파일과 페이로드 포맷 사양을 요구한다.[53]

프로파일은 페이로드 데이터를 인코딩하기 위해 사용되는 코덱 및 페이로드 포맷 코드 매핑을 RTP 헤더의 PT(Payload Type) 필드에 정의한다. 각 프로파일에는 여러 페이로드 포맷 사양이 포함되며 각각은 인코딩된 특정 데이터의 전송 정보를 기술한다.[44]

MPEG-4 오디오/비디오 스트림을 RTP 패킷에 매핑하는 것에 관한 내용은 RFC 3016에 규정되어 있으며, H.263 비디오 페이로드의 경우 RFC 2429에 기술되어 있다.[55]

5. 1. RTP 프로파일

RTP의 설계 고려사항 중 하나는 일정한 범위의 멀티미디어 포맷을 전달하고 RTSP 표준을 개정하지 않고도 새로운 포맷을 허용하는 것이다. 즉, 특정 프로토콜 애플리케이션에 필요한 정보가 제네릭 RTP 헤더에 포함되지 않는 대신에 별도의 RTP 프로파일 및 관련 페이로드 포맷을 통해 제공된다는 것을 의미한다.[52] 각 애플리케이션 클래스(예: 오디오, 비디오)에 대해 RTP는 프로파일 및 하나 이상의 관련 페이로드 포맷들을 정의한다.[52] 특정 애플리케이션 사용을 위한 완전한 RTP 사양은 프로파일과 페이로드 포맷 사양을 요구한다.[53]

프로파일은 페이로드 데이터를 인코딩하기 위해 사용되는 코덱 및 페이로드 포맷 코드 매핑을 RTP 헤더의 PT(Payload Type) 필드에 정의한다. 각 프로파일에는 여러 페이로드 포맷 사양이 포함되며 각각은 인코딩된 특정 데이터의 전송 정보를 기술한다.[44] 오디오 페이로드 포맷에는 G.711, G.723, G.726, G.729, GSM, QCELP, MP3, DTMF가 포함되며, 비디오 페이로드 포맷에는 H.261, H.263, H.264, H.265, MPEG-1/MPEG-2가 포함된다.[54]

RTP 프로파일의 예는 다음과 같다.

5. 2. RTP 페이로드 포맷

RTP의 설계 고려사항 중 하나는 일정한 범위의 멀티미디어 포맷을 전달하고 RTSP 표준을 개정하지 않고도 새로운 포맷을 허용하는 것이다. 즉, 특정 프로토콜 애플리케이션에 필요한 정보가 제네릭 RTP 헤더에 포함되지 않는 대신에 별도의 RTP 프로파일 및 관련 페이로드 포맷을 통해 제공된다는 것을 의미한다. 각 애플리케이션 클래스(예: 오디오, 비디오)에 대해 RTP는 프로파일 및 하나 이상의 관련 페이로드 포맷들을 정의한다.[15] 특정 애플리케이션 사용을 위한 완전한 RTP 사양은 프로파일과 페이로드 포맷 사양을 요구한다.[16]

프로파일은 페이로드 데이터를 인코딩하기 위해 사용되는 코덱 및 페이로드 포맷 코드 매핑을 RTP 헤더의 PT(Payload Type) 필드에 정의한다. 각 프로파일에는 여러 페이로드 포맷 사양이 포함되며 각각은 인코딩된 특정 데이터의 전송 정보를 기술한다.[8] 오디오 페이로드 포맷에는 G.711, G.723, G.726, G.729, GSM, QCELP, MP3, DTMF가 포함되며, 비디오 페이로드 포맷에는 H.261, H.263, H.264, H.265, MPEG-1/MPEG-2가 포함된다.[17] MPEG-4 오디오/비디오 스트림을 RTP 패킷에 매핑시키는 것에 관한 내용은 3016에 규정되어 있으며, H.263 비디오 페이로드의 경우 2429에 기술되어 있다.[18]

RTP 프로파일의 예는 다음과 같다.

6. RTCP (RTP Control Protocol)

RTP 사양은 RTP와 RTCP 두 가지 프로토콜을 기술한다. RTP는 멀티미디어 데이터 전송에 사용되며, RTCP는 제어 정보 및 QoS 변수를 주기적으로 전송하는 데 사용된다.[45] RTCP는 미디어 스트림 간 QoS 피드백과 동기화를 위해 사용된다.

데이터 전송 프로토콜 RTP가 제공하는 정보에는 타임스탬프(동기화용), 시퀀스 번호(패킷 손실 및 재정렬 감지용), 데이터의 인코딩 포맷을 지시하는 페이로드 포맷이 포함된다.[46] RTP에 비해 RTCP 트래픽 대역폭은 적은 편으로, 대개 약 5% 정도이다.[46][47]

RTP와 RTCP는 보통 특권이 없는 UDP 포트(1024 ~ 65535)를 사용하지만,[51] 프로토콜 설계가 전송에 독립적이기 때문에 SCTP, DCCP 등 다른 전송 프로토콜을 사용할 수도 있다. RTP 포트 번호는 짝수로, 각각의 연관되는 RTCP 포트는 그다음 홀수 번호로 선정할 것을 권고한다.[53] 그러나 프로토콜 멀티플렉싱 상황에서는 RTP와 RTCP에 단일 포트가 선정된다.[50]

7. 하위 프로토콜

RTP는 전송 프로토콜 위에서 이용된다.

사양 상, 하위 프로토콜은 특정 프로토콜에 얽매이지 않지만,[36] 포트 기능을 전제로 한다.[37] RTP 구현체들은 대부분 사용자 데이터그램 프로토콜(UDP)를 사용하는데, 그 이유는 전송 제어 프로토콜(TCP)가 시기적절함보다 신뢰성을 우선시하기 때문이다.[39] TCP가 RTP용으로 표준화되어 있기는 하지만, 일반적으로 사용되지는 않는다.[40]

멀티미디어 세션에 특화되어 설계된 그 밖의 전송 프로토콜로는 SCTP[41], DCCP[42]가 있으나 2012년 기준으로 널리 사용되지는 않고 있다.[43]

다음은 UDP, RTP/UDP, TCP를 비교한 표이다.

UDP, RTP/UDP, TCP 비교
colspan="2" |UDPRTP/UDPTCP
애플리케이션 간 통신
패킷 트랜잭션
스트림 통신-
순서 제어
도착 순서 보장--[28]
시퀀스 순서 복원-[29]
도달 보장--[30]


8. 응용 분야

RTP는 스트리밍 미디어의 실시간 전송을 위해 설계되었다. 이 프로토콜은 지터 보상, 패킷 손실, 순서가 뒤바뀐 전달 감지 기능을 제공하며, IP 멀티캐스트를 통해 여러 장소에 데이터를 전송할 수 있게 한다.[38] RTP는 IP 네트워크에서 오디오/비디오 전송의 주요 표준으로 간주되며, 관련 프로파일 및 페이로드 포맷과 함께 사용된다.[44]

실시간 멀티미디어 스트리밍 애플리케이션은 시기적절한 정보 전달을 요구하며, 이를 위해 일부 패킷 손실을 허용한다. 예를 들어, 오디오에서 패킷 손실은 1초의 사소한 오디오 데이터 손실을 일으킬 수 있지만, 오류 은닉 알고리즘을 통해 눈치채지 못하게 할 수 있다.[39] 전송 제어 프로토콜(TCP) 대신 사용자 데이터그램 프로토콜(UDP)이 주로 사용되는데, TCP는 시기적절함보다 신뢰성을 우선시하기 때문이다.[39]

RTP는 IETF의 오디오/비디오 트랜스포트 워킹 그룹에 의해 개발되었으며, H.323, RTSP 등 다른 프로토콜과 함께 사용된다.[44] RTP는 멀티미디어 데이터 전송을, RTCP는 제어 정보 및 QoS 변수 송신을 위해 사용된다.[45] RTP 세션은 세션 개시 프로토콜(SIP) 등 시그널링 프로토콜을 사용하여 초기화되며, 오디오와 비디오 스트림은 별도의 RTP 세션을 사용한다.[49]

RTP는 인터넷 전화(VoIP), IP 기반 오디오, WebRTC, IPTV와 같은 실시간 멀티미디어 애플리케이션에서 사용된다. 기능적인 멀티미디어 응용 프로그램은 SIP, 징글, RTSP, H.225, H.245와 같은 프로토콜을 사용하여 세션 시작, 제어 및 종료를 수행하고, H.264, MPEG, H.263과 같은 표준을 사용하여 페이로드 데이터를 인코딩한다.[25]

참조

[1] 웹사이트 What is the Real-time Transport Protocol (RTP)? https://www.techtarg[...] 2022-11-10
[2] 서적 Network De Boeck Université
[3] harvnb
[4] IETF RFC
[5] 서적 The Internet and its protocols https://books.google[...] Morgan Kaufmann
[6] 서적 THREE-DIMENSIONAL TELEVISION https://books.google[...] Springer
[7] 뉴스 What About Stream Control Transmission Protocol (SCTP)? https://web.archive.[...] 2017-10-04
[8] harvnb
[9] harvnb
[10] harvnb
[11] IETF RFC SDP: Session Description Protocol IETF 2006-07
[12] 서적 The industrial information technology handbook CRC Press
[13] 서적 Carrier grade voice over IP McGraw-Hill Professional
[14] IETF Multiplexing RTP Data and Control Packets on a Single Port IETF 2015-11-21
[15] 서적 Computer Networks Morgan Kaufmann
[16] IETF RFC
[17] harvnb
[18] 서적 Multimedia over IP and wireless networks Academic Press
[19] harvnb
[20] 서적 Serial Communication over RTP/CDP BoD - Books on Demand
[21] harvnb
[22] harvnb
[23] harvnb
[24] 문서
[25] harvnb
[26] IETF RFC
[27] pdf 15群(○○○)-8編 - 03gun_04hen_05.pdf https://www.ieice-hb[...]
[28] IETF RFC
[29] IETF RFC
[30] IETF RFC
[31] IETF RFC
[32] harvnb
[33] IETF RFC
[34] IETF RFC
[35] IETF RFC
[36] IETF RFC RTP may be used with other suitable underlying network or transport protocols
[37] IETF RFC RTP depends upon the lower-layer protocol to provide some mechanism such as ports
[38] 서적 Network https://books.google[...] De Boeck Université
[39] harvnb
[40] RFC RFC 4571
[41] 서적 The Internet and its protocols https://books.google[...] Morgan Kaufmann
[42] 서적 THREE-DIMENSIONAL TELEVISION https://books.google[...] Springer
[43] 뉴스 What About Stream Control Transmission Protocol (SCTP)? http://www.networkwo[...] 2017-10-04
[44] harvnb
[45] 서적 Computer Networks https://books.google[...] Morgan Kaufmann
[46] harvnb
[47] harvnb
[48] RFC SDP: Session Description Protocol IETF 2006-07
[49] 서적 The industrial information technology handbook https://books.google[...] CRC Press
[50] IETF Multiplexing RTP Data and Control Packets on a Single Port IETF 2010-04
[51] 서적 Carrier grade voice over IP https://books.google[...] McGraw-Hill Professional
[52] 서적 Computer Networks https://books.google[...] Morgan Kaufmann
[53] IETF RFC
[54] harvnb
[55] 서적 Multimedia over IP and wireless networks https://books.google[...] Academic Press
[56] harvnb
[57] 서적 Serial Communication over RTP/CDP https://books.google[...] BoD - Books on Demand



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com